//////////////////////////////////////////////////////////////////////
//
//	Copyright 2010-2011 Rogo's Team. All Rights Reserved
//
//////////////////////////////////////////////////////////////////////
package com.rogo.mvc.sub.mediator
{
	import com.rogo.mvc.interfaces.IMediator;
	import com.rogo.mvc.interfaces.INotification;
	import com.rogo.mvc.interfaces.INotifier;
	import com.rogo.mvc.sub.observer.Notifier;
	
	public class Mediator extends Notifier implements IMediator
	{
		public function Mediator(mediatorName:String, viewComponent:Object)
		{
			super();
			_mediatorName = mediatorName;
			this.viewComponent = viewComponent;
		}
		
		private var _mediatorName:String;
		
		public function get mediatorName():String
		{
			return _mediatorName;
		}
		
		private var _viewComponent:Object;
		
		public function get viewComponent():Object
		{
			return _viewComponent;
		}
		
		public function set viewComponent(value:Object):void
		{
			_viewComponent = value;
		}
		
		public function listNotificationInterests():Array
		{
			return [];
		}
		
		public function notificationHandler(notification:INotification):void{};
		
		public function onRegister():void{};
		
		public function onRemove():void{};
	}
}